﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using ECOSYSTEM_BL;
using ECOSYSTEM_Dominio;

namespace ECOSYSTEMPRESENTACION
{
    public partial class frmServicio : Form
    {
        public frmServicio()
        {
            InitializeComponent();
        }
        Producto elProducto = new Producto();
        ProductoBL elProductoBL = new ProductoBL();
        private void CargdarServicios() {
            if (dgvListaServicios.DataSource == null) {
                dgvListaServicios.DataSource = elProductoBL.ObtenerServicios();
            }
        }
        private Producto ObtenerObjetos() {
            elProducto.Nombre = txtNombreServicio.Text;
            elProducto.StockMin = Convert.ToDouble(txtCostoServicio.Text);
            elProducto.Descripcion = txtDescripcionServicio.Text;
            elProducto.Tipo = "Servicio";
            return elProducto;
        }
        private Boolean GuardarServicio() {
            Producto elProducto = ObtenerObjetos();
            elProductoBL.guardarServicio(elProducto);
            return true;
        }
        private void InhabilitarCampos(){
            txtFiltrar.Text = "";
            dgvListaServicios.DataSource = null;
            txtNombreServicio.Text = "";
            txtCostoServicio.Text = "";
            txtDescripcionServicio.Text = "";
            btnNuevo.Enabled = true;
            btnBuscar.Enabled = true;
            btnGuardar.Enabled = false;
            btnActualizar.Enabled = false;
            btnCancelar.Enabled = false;
            groupBox2.Enabled = false;
            groupBox3.Enabled = false;
        }

        //--> EVENTOS <--

        private void btnNuevo_Click(object sender, EventArgs e)
        {
            try
            {
                groupBox3.Enabled = true;
                btnBuscar.Enabled = false;
                btnGuardar.Enabled = true;
                btnCancelar.Enabled = true;
            }
            catch (Exception ex) { MessageBox.Show(ex.Message); }
        }

        private void btnGuardar_Click(object sender, EventArgs e)
        {
            try
            {
                GuardarServicio();
                MessageBox.Show("Servicio "+txtNombreServicio.Text+" Registrado Correctamente");
                InhabilitarCampos();
            }
            catch (Exception ex) { MessageBox.Show(ex.Message); }
        }

        private void btnBuscar_Click(object sender, EventArgs e)
        {
            try
            {
                groupBox2.Enabled = true;
                btnNuevo.Enabled = false;
                btnBuscar.Enabled = false;
                btnCancelar.Enabled = true;
                CargdarServicios();
            }
            catch (Exception ex) { MessageBox.Show(ex.Message); }
        }

        private void btnCancelar_Click(object sender, EventArgs e)
        {
            try
            {
                InhabilitarCampos();
            }
            catch (Exception ex) { MessageBox.Show(ex.Message); }
        }
    }
}
